package com.founder.devwork.dto.res;

import java.time.Instant;
import lombok.Data;

/**
 * EngineerStatsDTO 用于表示工程师的统计信息。
 * 提供 ID、角色、部门、姓名、当前提交数、当前总变更数、提交数、总变更数、活跃开始日期、活跃结束日期、活跃月数、活跃周数、活跃天数、平均每月提交数、平均每月变更数、平均每周提交数、平均每周变更数、平均每日提交数、平均每日变更数等字段。
 */
@Data
public class EngineerStatsDTO {

    private String id;
    private String role;
    private String department;
    private String name;
    private Integer currentCommitCount;
    private Integer currentTotalChanges;
    private Integer commitCount;
    private Integer totalChanges;
    private Instant activeStartDate;
    private Instant activeEndDate;
    private Integer activeMonths;
    private Integer activeWeeks;
    private Integer activeDays;
    private Integer avgMonthlyCommits;
    private Integer avgMonthlyChanges;
    private Integer avgWeeklyCommits;
    private Integer avgWeeklyChanges;
    private Integer avgDayCommits;
    private Integer avgDayAdditions;
    private Integer avgDayChanges;
    private Integer actualActiveDays;
    private Integer avgActualDayCommits;
    private Integer avgActualDayAdditions;
    private Integer avgActualDayChanges;
}
